import dayjs from 'dayjs'
import relativeTime from 'dayjs/plugin/relativeTime'
import 'dayjs/locale/zh-cn'
// 全局注册组件。组件的名称，组件的内容
import geekIcon from './geek-icon'

import hljs from 'highlight.js'
import 'highlight.js/styles/vs2015.css'
dayjs.extend(relativeTime)
dayjs.locale('zh-cn')

// 插件的形式？
// VueRouter的时候。
export default {
  // 什么时候执行，当Vue.use
  install: (Vue) => {
    // 注册全局组件
    Vue.component(geekIcon.name, geekIcon)

    // 定义全局的过滤器？
    Vue.filter('relativeTime', (val) => {
      return dayjs(val).toNow()
    })

    // 注册一个全局指令 ()
    Vue.directive('highlight', (el) => {
      const code = el.querySelectorAll('pre code')
      code.forEach(element => {
        hljs.highlightElement(element)
      })
    })
  }
}
